package com.xlzcx.xltz.service.a_user;

import com.xlzcx.xltz.entity.AUser;
import com.xlzcx.xltz.entity.vo.AUserVo;

import javax.servlet.http.HttpServletRequest;
import java.util.HashMap;

/**
 * 作者: 李咨辰
 * 文件名: AUserService.java
 * 路径: com.xlzcx.xltz.service.user
 * 时间: 2024-10-05 11:29
 * 版本: 1.0
 * 描述: TODO 用户
 **/
public interface AUserService {
    /**
     * 登录方法
     *
     * @param map 账号、密码
     * @return 登录对象
     */
    AUserVo doLogin(HashMap<String, String> map, HttpServletRequest request);

    /**
     * 登录状态验证
     *
     * @param id     用户编号
     * @param secret 授权码
     * @return 登录对象
     */
    AUserVo loginStatus(String id, String secret, HttpServletRequest request);


    /**
     * 判断用户是否注册
     *
     * @param user 手机号或邮箱
     * @return 没有注册返回false
     */
    boolean getUserByPhoneOrEmail(String user);

    /**
     * 注册账号
     *
     * @param user     手机号或邮箱
     * @param password 密码
     * @param request  用户获取用户ip
     * @return 成功大于0
     */
    int singIn(String user, String password, HttpServletRequest request);

    /**
     * 修改用户
     *
     * @param aUser   用户类
     * @param request 用于获取ip
     * @return 成功返回true
     */
    boolean editUser(AUserVo aUser, HttpServletRequest request);
}
